안녕하세요. 충격센서와 전지 등 구입해서 실험 진행 중 에러가 자꾸 생겨 질문드립니다.
보드는 기존에 가지고 있던 Wemos R1 D1 보드(ESP8266내장) 사용중입니다.
컴파일까지는 잘 되는데 업로드가 안되는 문제가 생기네요.어떻게 해결하면 될 지 여쭤봅니다. 결선 등 문제는 다 확인했고 포트도 잡은 상태입니다.
<소스코드>
#include <ESP8266WiFi.h>
#include <FirebaseArduino.h>
#include <CapacitiveSensor.h>
#define FIREBASE_HOST "*****" (일부러 가렸습니다)
#define FIREBASE_AUTH "" // 데이터베이스 접속 키
#define WIFI_SSID "*****" // 와이파이 SSID
#define WIFI_PASSWORD "*****" // 와이파이 Password
CapacitiveSensor cs_3_2 = CapacitiveSensor(3, 2);
int a=0; int b;
void setup() {
Serial.begin(9600);
//와이파이 연결
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
Serial.print("connecting");
while (WiFi.status() != WL_CONNECTED) {
Serial.print(".");
delay(500);
}
Serial.println();
Serial.print("connected: ");
Serial.println(WiFi.localIP());
//파이어베이스 연결
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
}
void loop() {
//충돌 인식
long sensor_1 = cs_3_2.capacitiveSensorRaw(1);
if (sensor_1 > 12)
{
a += 1;
do
{
b=cs_3_2.capacitiveSensorRaw(1);
delay(200);
} while(b>12);
}
Serial.println(a);
//충돌값 데이터베이스에 업로드
Firebase.setFloat("Collision", a);
if(a > 30){
Firebase.setString("충돌", "함");
Firebase.setInt("Score", b++);
}else{
Firebase.setString("충돌", "안함");
Firebase.setInt("Score", b);
}
delay(2000);
}
<오류 메세지>
아두이노:1.8.13 (Windows 10), 보드:"WeMos D1 R1, 80 MHz, Flash, Disabled (new can abort), All SSL ciphers (most compatible), 4MB (FS:2MB OTA:~1019KB), v2 Lower Memory, Disabled, None, Only Sketch, 57600"
스케치는 프로그램 저장 공간 363488 바이트(34%)를 사용. 최대 1044464 바이트.
전역 변수는 동적 메모리 28976바이트(35%)를 사용, 52944바이트의 지역변수가 남음. 최대는 81920 바이트.
esptool.py v2.6
2.6
esptool.py v2.6
Serial port COM9
Connecting........_____....._____....._____....._____....._____....._____....._____
Traceback (most recent call last):
File "C:\Users\���ذ�\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.2/tools/upload.py", line 25, in <module>
esptool.main(fakeargs)
File "C:/Users/���ذ�/AppData/Local/Arduino15/packages/esp8266/hardware/esp8266/2.5.2/tools/esptool\esptool.py", line 2653, in main
esp.connect(args.before)
File "C:/Users/���ذ�/AppData/Local/Arduino15/packages/esp8266/hardware/esp8266/2.5.2/tools/esptool\esptool.py", line 468, in connect
raise FatalError('Failed to connect to %s: %s' % (self.CHIP_NAME, last_error))
esptool.FatalError: Failed to connect to ESP8266: Timed out waiting for packet header
esptool.FatalError: Failed to connect to ESP8266: Timed out waiting for packet header
이 리포트는 파일 -> 환경설정에 "컴파일중 자세한 출력보이기"를
활성화하여 더 많은 정보를
보이게 할 수 있습니다.
아두이노:1.8.13 (Windows 10), 보드:"WeMos D1 R1, 80 MHz, Flash, Disabled (new can abort), All SSL ciphers (most compatible), 4MB (FS:2MB OTA:~1019KB), v2 Lower Memory, Disabled, None, Only Sketch, 115200"
Executable segment sizes:
IROM : 228640 - code in flash (default or ICACHE_FLASH_ATTR)
IRAM : 26756 / 32768 - code in IRAM (ICACHE_RAM_ATTR, ISRs...)
DATA : 1248 ) - initialized variables (global, static) in RAM/HEAP
RODATA : 688 ) / 81920 - constants (global, static) in RAM/HEAP
BSS : 24880 ) - zeroed variables (global, static) in RAM/HEAP
스케치는 프로그램 저장 공간 257332 바이트(24%)를 사용. 최대 1044464 바이트.
전역 변수는 동적 메모리 26816바이트(32%)를 사용, 55104바이트의 지역변수가 남음. 최대는 81920 바이트.
esptool.py v2.8
Serial port COM10
Connecting........_____....._____....._____....._____....._____....._____.....____Traceback (most recent call last):
File "C:\Users\���ذ�\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.7.4/tools/upload.py", line 65, in
esptool.main(cmdline)
File "C:/Users/���ذ�/AppData/Local/Arduino15/packages/esp8266/hardware/esp8266/2.7.4/tools/esptool\esptool.py", line 2890, in main
esp.connect(args.before)
File "C:/Users/���ذ�/AppData/Local/Arduino15/packages/esp8266/hardware/esp8266/2.7.4/tools/esptool\esptool.py", line 483, in connect
raise FatalError('Failed to connect to %s: %s' % (self.CHIP_NAME, last_error))
esptool.FatalError: Failed to connect to ESP8266: Timed out waiting for packet header
이 리포트는 파일 -> 환경설정에 "컴파일중 자세한 출력보이기"를
활성화하여 더 많은 정보를
보이게 할 수 있습니다.
결선을 제거하여 업로드를 해봐야하는 게 오류 예제에서 다음과 같은 사항이 있더라구요 ㅎㅎ
1. GPIO0(D3), GPIO1(Tx) 또는 GPIO2(D4)는 로우(pulled Low) - ex. LED로 풀다운 저항기가 접지로 당겨집니다.
2. GPIO15(D8)를 높게 당긴 경우(pulled high).
D4에 결선된 선만 빼도 업로드가 됐다는 경우도 있으니까 한번 시도해보세요
추가적으로 폴더 경로에는 한글이 없게 하는 게 좋아요. 가끔 원인을 도저히 찾을 수 없을 때가 있는데 경로에 한글이 있어서 발생하는 경우가 있거든요